package main

import (
	"fmt"
	"strconv"
)

func main() {
	var i int //int类型的取值范围，和操作系统相关。如果是64位系统，它的取值范围就是int64. 32位系统，就是int32
	i = 10
	fmt.Printf("i: %T %d \n", i, i)

	//尝试将字符串转换为整数
	str := "123"
	//	i = int(str) //这样不行，会报错

	//使用strconv包来处理字符串相关的转换
	//Atoi 用于将字符串，转换成整数
	i, _ = strconv.Atoi(str)
	fmt.Println(i)

	re, _ := strconv.Atoi("10068")
	fmt.Printf("%T %d \n", re, re)

	re, err := strconv.Atoi("10068.123")//报错
	if err != nil {
		fmt.Printf("转失败失败，结果得到零值：%d 报错信息:%s \n", re, err)
	}

	f32, _ := strconv.ParseFloat("1234.55", 32)
	fmt.Printf("将字符串，转换成float32：%.2f \n", f32)
}
